package org.jeecg.modules.externalEquity.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * @Description: 4、对外股权投资
 * @Author: jeecg-boot
 * @Date:   2025-04-23
 * @Version: V1.0
 */
@Data
@TableName("tb_external_equity")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="tb_external_equity对象", description="4、对外股权投资")
public class TbExternalEquity implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private java.lang.String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private java.util.Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private java.lang.String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private java.lang.String sysOrgCode;
	/**企业名称*/
	@Excel(name = "企业名称", width = 15)
    @ApiModelProperty(value = "企业名称")
    private java.lang.String companyName;
	/**企业编码*/
	@Excel(name = "企业编码", width = 15)
    @ApiModelProperty(value = "企业编码")
    private java.lang.String orgCode;
	/**企业级次*/
	@Excel(name = "企业级次", width = 15)
    @ApiModelProperty(value = "企业级次")
    private java.lang.String companyLevel;
	/**被投资企业名称*/
	@Excel(name = "被投资企业名称", width = 15)
    @ApiModelProperty(value = "被投资企业名称")
    private java.lang.String targetCompany;
	/**被投资企业性质*/
	@Excel(name = "被投资企业性质", width = 15)
    @ApiModelProperty(value = "被投资企业性质")
    private java.lang.String targetCompanyProperty;
	/**被投资企业所在地区*/
	@Excel(name = "被投资企业所在地区", width = 15)
    @ApiModelProperty(value = "被投资企业所在地区")
    private java.lang.String targetCompanyDistrict;
	/**初始投资时间*/
	@Excel(name = "初始投资时间", width = 15)
    @ApiModelProperty(value = "初始投资时间")
    private java.lang.String initialInvestmentTime;
	/**初始投资成本*/
	@Excel(name = "初始投资成本",  width = 20, numFormat = "0.00")
    @ApiModelProperty(value = "初始投资成本")
    private java.math.BigDecimal initialInvestmentCost;
	/**累计对外投资账面金额原值*/
	@Excel(name = "累计对外投资账面金额原值", width = 20, numFormat = "0.00")
    @ApiModelProperty(value = "累计对外投资账面金额原值")
    private java.math.BigDecimal cumulativeOriginalValue;
	/**累计对外投资账面金额净值*/
	@Excel(name = "累计对外投资账面金额净值", width = 20, numFormat = "0.00")
    @ApiModelProperty(value = "累计对外投资账面金额净值")
    private java.math.BigDecimal cumulativeNetValue;
	/**股权比例（%）*/
	@Excel(name = "股权比例（%）", width = 15)
    @ApiModelProperty(value = "股权比例（%）")
    private java.lang.String equityRatio;
	/**累计投资收益应收*/
	@Excel(name = "累计投资收益应收", width = 20, numFormat = "0.00")
    @ApiModelProperty(value = "累计投资收益应收")
    private java.math.BigDecimal cumulativeIncomeReceivable;
	/**累计投资收益实收*/
	@Excel(name = "累计投资收益实收", width = 20, numFormat = "0.00")
    @ApiModelProperty(value = "累计投资收益实收")
    private java.math.BigDecimal cumulativeIncomeReceived;
	/**本年实际收到投资收益*/
	@Excel(name = "本年实际收到投资收益", width = 20, numFormat = "0.00")
    @ApiModelProperty(value = "本年实际收到投资收益")
    private java.math.BigDecimal currentYearIncomeReceived;
	/**核算方法*/
	@Excel(name = "核算方法", width = 15)
    @ApiModelProperty(value = "核算方法")
    private java.lang.String accountingMethod;
	/**被投资企业的经营状况*/
	@Excel(name = "被投资企业的经营状况", width = 15)
    @ApiModelProperty(value = "被投资企业的经营状况")
    private java.lang.String targetCompanyOperatingStatus;
	/**最近三年分红情况*/
	@Excel(name = "最近三年分红情况", width = 15)
    @ApiModelProperty(value = "最近三年分红情况")
    private java.lang.String dividendSituation;
	/**备注*/
	@Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private java.lang.String remark;
}
